home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / c64-preservation-project / educational / intro_to_basic_part_2[commodore_1983].nbz / linear (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  903 b   |  32 lines

  1. 5 REM LINEAR
  2. 10 REM PROGRAM TO SHOW MOTION OF BALL
  3. 20 DATA0,0,0,0,0,0,0,112,0
  4. 30 DATA3,254,0,15,255,128,31,255,192
  5. 40 DATA63,255,224,63,255,224,127,255,240
  6. 50 DATA127,255,240,127,255,240,63,255,224
  7. 60 DATA63,255,224,31,255,192,15,255,128
  8. 70 DATA3,254,0,0,112,0,0,0,0
  9. 80 DATA0,0,0,0,0,0,0,0,0
  10. 100 REM SET UP SPRITE DESCRIPTION
  11. 110 FOR J=0TO62
  12. 120 READA: POKE 832+J,A
  13. 130 NEXTJ
  14. 140 V=53248 :REM SET BASE ADDRESS
  15. 150 POKE 2040,13:REM SET POINTER TO DESCRIPTION
  16. 155 PRINT"[147]":REM CLEAR SCREEN
  17. 160 POKE V+33,1:REM SET BACKGROUND
  18. 170 POKE V+39,0:REM SET  COLOUR
  19. 180 POKE V+23,1:POKEV+29,1:REM EXPAND
  20. 190 X=0:Y=0:REM SET STARTING POSITION
  21. 200 DX=2.3 :DY=1.2:REM SET HORIZONTAL AND VERTICAL SPEEDS
  22. 205 POKEV+21,1
  23. 210 POKEV+21,1 :REM ENABLE SPRITE
  24. 220 REM LOOP STARTS HERE
  25. 230 X=X+DX:Y=Y+DY :REM CALCULATE NEW POSITION
  26. 240 POKE V+1,Y
  27. 250 POKE V+0,X AND 255: REM PUT SPRITE THERE
  28. 260 IF X >=256 THEN POKE V+16,1:GOTO 280
  29. 270 POKE V+16,0
  30. 280 IF Y < 225 AND X < 400 THEN230 :REM LOOP AROUND
  31. 290 GOTO190 :REM REPEAT MOVEMENT
  32.